package com.example.kaogong.sys.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.example.kaogong.common.utils.RespBean;
import com.example.kaogong.sys.pojo.StudentPaper;
import com.baomidou.mybatisplus.extension.service.IService;
import com.example.kaogong.sys.pojo.dto.PaperCheckDto;
import com.example.kaogong.sys.pojo.dto.StudentPaperDto;
import com.example.kaogong.sys.pojo.vo.StudentPaperDetailVo;
import com.example.kaogong.sys.pojo.vo.StudentPaperInfoVo;

import java.util.List;

/**
 * <p>
 * 学生试卷 服务类
 * </p>
 *
 * @author    
 * @since 2022-03-31
 */
public interface IStudentPaperService extends IService<StudentPaper> {

    /**
     * 当前学生考试试卷提交
     * @param studentPaperDto
     * @param name
     * @return
     */
    RespBean paperSubmit(StudentPaperDto studentPaperDto, String name);

    /**
     * 当前登录学生获取所有作答试卷的基本信息
     * @param name
     * @return
     */
    RespBean<List<StudentPaperInfoVo>> getStudentAllStudentPaper(String name);

    /**
     * 根据作答试卷编号获取试卷详细作答信息
     * @param id
     * @return
     */
    RespBean<StudentPaperDetailVo> getStudentPaperDetailInfo(Integer id);

    /**
     * 当前登录教师获取所命题试卷所有未批阅的试卷基本信息
     * @param name
     * @return
     */
    RespBean<List<StudentPaperInfoVo>> getAllUncheckedPaper(String name);

    /**
     * 教师批阅学生试卷
     * @param paperCheckDto
     * @return
     */
    RespBean studentPaperCheck(PaperCheckDto paperCheckDto);
}
